A solid state drive (SSD) may be comprised of one or more packages of non-volatile memory dies, where each die is comprised of memory cells, where memory cells are organized into pages and pages are organized into blocks. Each memory cell can store one or more bits of information. For example, a solid state drive (SSD) may comprise NAND memory cells, which may be referred to as NAND flash memory.
The NAND includes wordlines that are programmed in pulses (loops). While NAND wordlines are being programmed, it is possible that there is a power loss. This may leave a wordline partially programmed (i.e. not all pulses for that wordline have been programmed). Upon resuming programming of a partially programmed wordline, when recovering from a power loss, conventional systems do not know at which pulse the programming was interrupted (or suspended). Therefore, conventional systems start reprogramming from pulse #1 (i.e. the lowest applied program voltage). While the memory cells that are already programmed before power loss are inhibited (i.e. appropriate voltage is applied to their corresponding bitlines), some program pulses are unnecessarily applied. This has two adverse effects: 1) NAND memory cells are exposed to additional program disturb unnecessarily; and 2) programming time after recovery from power loss is longer.